package store.aixx.jwt.demo.util;

import org.passay.ResourceBundleMessageResolver;
import org.springframework.context.i18n.LocaleContextHolder;
import org.springframework.context.support.ResourceBundleMessageSource;

import java.nio.charset.StandardCharsets;

/**
 * @author yukai
 * @since 2021年12月11日 1:49
 */
public class MessageUtil {

    private static ResourceBundleMessageSource messageSource;

    static {
        messageSource = new ResourceBundleMessageSource();
        messageSource.setDefaultEncoding(StandardCharsets.UTF_8.toString());
        messageSource.setBasename("i18n/message");
        messageSource.setUseCodeAsDefaultMessage(true);
    }

    /**
     * 获取国际化消息
     *
     * @param code 国际化消息Key
     * @param args 国际化消息参数
     */
    public static String getMessage(String code, Object... args) {
        return messageSource.getMessage(code, args, LocaleContextHolder.getLocale());
    }

}
